/**
 * 常见的手写题：
 *      useState 的基本实现
 *
 * */

let state =[], curIndex = 0
function  useState(initialValue){
    //判断当前环境中的state是否已经被赋值
    //这里需要考虑，多个useState的重复调用
    state = state[curIndex] ? state[curIndex]:initialValue;
    const setState = function (newState){
        //如果传入的值是和之前的一致，不进行处理
        if(state[curIndex] === newState) return
        state[curIndex] = newState
        update()
    }
    return [state[curIndex],setState]
}


function  update() {
    console.log('patch过程结束，重新触发render')
}
